Das Hilfethema Zuordnungslösungen formatieren beschreibt das Formular FrmZuordnung, das die Erstellung einer Zuordnungsaufgabe für Testverwaltung.mdb erlaubt. Der folgende Bildschirmauschnitt zeigt das gleichnamige Formular des Frontend Access_Quiz.mdb. Es erlaubt die Eingabe und Selbstkorrektur einer Zuordnungsaufgabe:

Das obige Formular FrmZuordnung enthält die folgenden Steuerelemente:
Sie können die Eigenschaftenliste eines Steuerelements inspizieren, wenn Sie den Menüpunkt »Ansicht/Entwurfsansicht wählen, ein Steuerelement anklicken und »Alt/Enter drücken.
Die im obigen Formular rot bezeichneten Unterformulare Zahlenalternativen und
Buchstabenalternativen geben
dem Testteilnehmer die Alternativen vor, die er zuordnen soll. Das
Unterformular Zuordnungslösungen (zwischen den Unterformularen
Zahlenalternativen und ZOBenutzerlösungen) zeigt die richtigen Lösungspaare
an, sobald der Benutzer die Befehlsschaltfläche
drückt. ZOBenutzerlösungen registriert
schliesslich die
Benutzerantworten.
Das Hilfethema Abfragen als Datenherkunft führt die Formulareigenschaft Datenherkunft am Beispiel von FrmAllgemeines ein. FrmAllgemeines initialisiert seine Ausgabefelder mit den Daten der QBE-Abfrage QryFrmAllgemeines und schreibt deren Werte mit den Eingaben des Benutzers fort. Das oben abgebildete Formular, seine Unterformulare und seine Steuerelemente greifen auf die folgenden Datenquellen zu:
| Steuerelement | Datenquelle |
| Formular FrmZuordnung | QryFrmZuordnung (Fragenschlüssel, Kurzbeschreibung, Fragentext, Quelle) |
| Unterformular Zahlenalternativen | Tabelle QuizBUCHSTABEN_ALTERNATIVEN |
| Unterformular Buchstabenalternativen | Tabelle QuizZAHLEN_ALTERNATIVEN |
| Unterformular Zuordnungslösungen | Tabelle QuizZUORDNUNGS_LÖSUNGEN |
| Unterformular ZOBenutzerlösungen | Tabelle SCORESZO |
Jede Zeile der Tabelle SCORESZO speichert die Antworten auf eine Zuordnungsfrage. Die dabei verwendeten Eingabewerte der Textfelder TxfBuchstabenpräfix und TxfZahlenpräfix des Unterformulars ZOBenutzerlösungen reichen aber nicht für eine Identifikation der Zeilen von SCORESZO. Damit sich jede Zeile eindeutig von den anderen unterscheidet, müssen die folgenden Felder in den Primärschlüssel eingehen:
Wenn der Testteilnehmer im obigen Formular ein Lösungspaar eingibt, kann MS Access lediglich drei der fünf Schlüsselattribute instanzieren, nämlich das Buchstabenpräfix, das Zahlenpräfix und den Fragenschlüssel. Die ersten beiden Werte gibt der Testteilnehmer ein und der Fragenschlüssel stammt aus dem Hauptformular FrmZuordnung. Sobald der Testteilnehmer auf eine andere Zeile des Unterformulars ZOBenutzerlösungen wechselt, erscheint eine Fehlermeldung, weil eine Zeile nur dann eingefügt werden kann, wenn alle Werte des Primärschlüssels bekannt sind. Der Entwickler muss deshalb die Matrikelnummer und den Testschlüssel aus einer zusätzlichen Datenquelle beziehen.
Eine Möglichkeit sind zwei versteckte Textfelder TxfMatrikelnummerFürAktualisierung und TxfTestschlüsselFürAktualisierung. Wir fügen diese Felder neben den sichtbaren Feldern TxfBuchstabenpräfix und TxfZahlenpräfix an und verstecken sie, weil sie ihre Daten nicht vom Benutzer sondern vom laufenden Programm beziehen. Da sie Attribute der Tabelle ZOSCORES aktualisieren, hängen wir das Suffix FürAktualisierung an. Beide Textfelder beziehen ihren Wert nicht aus einer Abfrage oder Tabelle, sondern aus einem Ausdruck, dem Rückgabewert einer Funktion des Modul Access_Quiz.
Mit »Alt/F11 gelangen Sie in die Eigenschaftenliste des Textfelds TxfMatrikelnummerFürAktualisierung. Der folgende Ausschnitt aus der Eigenschaftenliste zeigt zum einen den Standardwert =Matrikel(). Das heisst, TxfMatrikelnummerFürAktualisierung wird automatisch mit dem Ergebnis der Funktion Matrikel inititalisiert. Weil zum anderen die Eigenschaft Steuerelementinhalt mit dem Feld Matrikelnummer der Tabelle SCORESZO verknüpft ist, wird der Rückgabewert Matrikel() nicht nur zum Standardwert des versteckten Textfelds, sondern auch zur Matrikelnummer der laufenden Zeile von SCORESZO.

Der Ausdruck =Matrikel() weist also der Tabellenspalte Matrikelnummer indirekt den Rückgabewert der Funktion Matrikel() zu. Die Funktion ist im Standardmodul vereinbart:
'--- Für den Gebrauch im Unterformular Subfrm ZOBenutzerlösungenPublic Function Matrikel() As String Matrikel = Matrikelnummer_des_Teilnehmers End Function
Das Schlüsselwort Public ist erforderlich, weil Matrikel() ausserhalb des vereinbarenden Standardmoduls verwendet wird. Die Aufgabe der Funktion Matrikel() ist es lediglich, den Wert der globalen Variablen Matrikelnummer_des_Teilnehmers zurückzugeben. Matrikelnummer_des_Teilnehmers ist zu Beginn des Programms vom Testteilnehmer erfragt worden und muss ebenfalls als Public deklariert werden, weil die Variable ausserhalb des Moduls gebraucht wird, das ihr den Wert zuweist. Der Steuerelementinhalt von TxfTestschlüsselFürAktualisierung wird analog ermittelt.